/**
 * @description 运动 router
 */
const router = require('koa-router')()
const loginCheck = require('../middlewares/loginCheck')
const {
  saveExercise,
  getExercise,
  getBadge,
} = require('../controller/exercise')

router.prefix('/api/exercise')

/**
 * 保存运动数据
 * @param {number} type 运动类型，0 跑步，1 骑行，2 课程训练，必需
 * @param {number} duration 运动持续时间，单位秒，必需
 * @param {number} meter 运动距离（如跑步和骑行的距离），单位米
 * @param {number} calorie 本次运动消耗的卡路里数，单位卡
 */
router.post(
  '/save',
  loginCheck,
  async (ctx, next) => {
    const { type, duration, meter, calorie } = ctx.request.body
    ctx.body = await saveExercise(ctx, { type, duration, meter, calorie })
  }
)

/* 获取近 7 日运动数据 */
router.get(
  '/',
  loginCheck,
  async (ctx, next) => {
    ctx.body = await getExercise(ctx)
  }
)

// 获取个人运动徽章
router.get(
  '/badge',
  loginCheck,
  async (ctx, next) => {
    ctx.body = await getBadge()
  }
)

module.exports = router
